1. Field of the Invention
The present invention relates to apparatus and methods for determining the size of available memory in a computer system. More particularly, the present invention relates to a method for automatically determining memory size in a computer system in which a user may selectively remove and add memory devices.
2. Prior Art
In the computing industry, it is quite common for a central processing unit (CPU) to be coupled to memory devices, such as for example, dynamic random access memory (DRAM). The DRAM memory (like all semi-conductor memory devices) identifies specific storage locations of data with a unique address. The more memory which is available to the CPU, the higher the addresses available to access data within the memory devices. In many computer systems, such as personal computers (PCs), a user may increase the amount of available memory by adding discrete memory devices, such as 256K bit, 1M bit, etc. memory chips.
In those computer systems which permit a user to increase the amount of available memory, it is necessary to identify the total available memory address space in order to permit the CPU to access all of the data locations in the now expanded memory. Historically, the memory size of the system was identified to the CPU through the use of jumper wires on the main printed circuit board, or dual in-line package (DIP) switches located adjacent to the memory on the printed circuit board. If a user incorrectly sets the available memory size in the computer system higher than it actually is, the CPU will overwrite data stored at these non-existant higher addresses into the highest real address which exists in the memory system. This feature is commonly referred to as memory "wrap around". Accordingly, errors may result, data loss, and overall system efficiency sacrificed through improper setting of the DIP switches or jumper wires on the printed circuit board, since the CPU will operate under conditions of improper memory address space allocation.
As will be described more fully below, the present invention provides a method and apparatus which permits the CPU to determine the true memory size available to it without the necessity of the user flipping switches, jumpers, or other hardware to set the available memory size in the system.